The Case for Dynamic Optimization
نویسنده
چکیده
We present and evaluate a simple, yet efficient dynamic optimization technique that increases memory-hierarchy performance for pointer-centric applications by up to 24% and reduces cache misses by up to 35%. Based on temporal profiling information, our algorithm reorders individual data members in dynamically allocated objects to increase spatial locality. Our optimization is applicable to all type-safe programming languages that completely abstract from physical storage layout; examples of such languages are Java and Oberon. In our implementation, the optimization is fully automatic and operates at run-time on live data structures, guided by dynamic profiling data. Whenever the results of profiling suggest that a running program could benefit from data-member reordering, optimized versions of the affected procedures are constructed on-the-fly in the background. As soon as it is safe to do so, the dynamically generated code is substituted in place of the previously executing version and all affected live data objects are simultaneously transformed to the new storage layout. The program then continues its execution using the improved data arrangement, until profiling again suggests that re-optimization would be beneficial. Hence, storage layouts in our system are continuously adapted to reflect current access profiles. Our results indicate that it is often worthwhile to re-optimize an already executing and optimized program all over again when the user’s behavior changes. The main beneficiaries of such re-optimizations are shared libraries, which at different times can be optimized in the context of the currently dominant client application. In our experiments, we optimized a system library in the context of four different usage patterns and then correlated each of these specialized libraries across all four of the usage patterns. In some contexts, the specialized library performed 13% better than libraries optimized for another access pattern, and also 7% better than the original library that wasn’t optimized for any particular access pattern. Hence, in systems where such re-optimizations can be executed rapidly, it becomes worthwhile to construct specialized versions at run-time.
منابع مشابه
Fluid Injection Optimization Using Modified Global Dynamic Harmony Search
One of the mostly used enhanced oil recovery methods is the injection of water or gas under pressure to maintain or reverse the declining pressure in a reservoir. Several parameters should be optimized in a fluid injection process. The usual optimizing methods evaluate several scenarios to find the best solution. Since it is required to run the reservoir simulator hundreds of times, the process...
متن کاملA Framework for Adapting Population-Based and Heuristic Algorithms for Dynamic Optimization Problems
In this paper, a general framework was presented to boost heuristic optimization algorithms based on swarm intelligence from static to dynamic environments. Regarding the problems of dynamic optimization as opposed to static environments, evaluation function or constraints change in the time and hence place of optimization. The subject matter of the framework is based on the variability of the ...
متن کاملA dynamic programming approach for solving nonlinear knapsack problems
Nonlinear Knapsack Problems (NKP) are the alternative formulation for the multiple-choice knapsack problems. A powerful approach for solving NKP is dynamic programming which may obtain the global op-timal solution even in the case of discrete solution space for these problems. Despite the power of this solu-tion approach, it computationally performs very slowly when the solution space of the pr...
متن کاملOptimization Model of Hirmand River Basin Water Resources in the Agricultural Sector Using Stochastic Dynamic Programming under Uncertainty Conditions
In this study, water management allocated to the agricultural sector’ was analyzed using stochastic dynamic programming under uncertainty conditions. The technical coefficients used in the study referred to the agricultural years, 2013-2014. They were obtained through the use of simple random sampling of 250 farmers in the region for crops wheat, barley, melon, watermelon and ruby grapes under ...
متن کاملThe optimal energy carriers substitutes in thermal power plants:A fuzzy linear programming model
In this paper, a dynamic optimization approach for optimal choice of energy carriers in thermal power plants is proposed that analyzes the substitution of energy carriers in short-term planning of a power plant.The model is based on the linear programming method with the objective of minimizing costs under constraints of resource availability, energy balances, environmental regulations and elec...
متن کاملRobust optimization of a mathematical model to design a dynamic cell formation problem considering labor utilization
Cell formation (CF) problem is one of the most important decision problems in designing a cellular manufacturing system includes grouping machines into machine cells and parts into part families. Several factors should be considered in a cell formation problem. In this work, robust optimization of a mathematical model of a dynamic cell formation problem integrating CF, production planning and w...
متن کامل